/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package dominio;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 *
 * @author d015532
 */
public class AreaDeRiesgo {
    
    private String idAreaRiesgo;
    private String nombre;    
    private String nivelCapacitacion;//lista en memoria con valores: Inicial, Principiante, Intermedio, Avanzado, Experto.
    private String listaFactoresRiesgo;
    private boolean definidoPorGeoloc;
    private ArrayList<String> areaDefinida;
    //tengo que tener otra variable para guardas las coordenadas del area
    
    public AreaDeRiesgo(){}
    
    public AreaDeRiesgo(String idArea, String nombre, String nivelCapacit, String factores){
        this.idAreaRiesgo = idArea;
        this.nombre = nombre;
        this.listaFactoresRiesgo = factores;
        this.nivelCapacitacion = nivelCapacit;
        this.definidoPorGeoloc = false;
        this.areaDefinida = new ArrayList<String>();
    }

    /**
     * @return the idAreaRiesgo
     */
    public String getIdAreaRiesgo() {
        return idAreaRiesgo;
    }

    /**
     * @param idAreaRiesgo the idAreaRiesgo to set
     */
    public void setIdAreaRiesgo(String idAreaRiesgo) {
        this.idAreaRiesgo = idAreaRiesgo;
    }

    /**
     * @return the nombre
     */
    public String getNombre() {
        return nombre;
    }

    /**
     * @param nombre the nombre to set
     */
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    /**
     * @return the listaFactoresRiesgo
     */
    public String getListaFactoresRiesgo() {
        return listaFactoresRiesgo;
    }

    /**
     * @param listaFactoresRiesgo the listaFactoresRiesgo to set
     */
    public void setListaFactoresRiesgo(String listaFactoresRiesgo) {
        this.listaFactoresRiesgo = listaFactoresRiesgo;
    }

//    public void agregarFactorDeRiesgo(FactorDeRiesgo unFactor){
//        this.listaFactoresRiesgo.add(unFactor);
//    }
    /**
     * @return the nivelCapacitacion
     */
    public String getNivelCapacitacion() {
        return nivelCapacitacion;
    }

    /**
     * @param nivelCapacitacion the nivelCapacitacion to set
     */
    public void setNivelCapacitacion(String nivelCapacitacion) {
        this.nivelCapacitacion = nivelCapacitacion;
    }
    
    /**
     * @return the definidoPorGeoloc
     */
    public boolean isDefinidoPorGeoloc() {
        return definidoPorGeoloc;
    }

    /**
     * @param definidoPorGeoloc the definidoPorGeoloc to set
     */
    public void setDefinidoPorGeoloc(boolean definidoPorGeoloc) {
        this.definidoPorGeoloc = definidoPorGeoloc;
    }

    /**
     * @return the areaDefinida
     */
    public ArrayList<String> getAreaDefinida() {
        return areaDefinida;
    }

    /**
     * @param areaDefinida the areaDefinida to set
     */
    public void setAreaDefinida(ArrayList<String> areaDefinida) {
        this.areaDefinida = areaDefinida;
    }
    
    
    @Override
    public String toString() {
        String salida = "";
        String datosArea = "";
        //String factoresRiesgo = "";
        String esPorGeoloc = new Boolean(definidoPorGeoloc).toString();
//        Iterator<FactorDeRiesgo> iterF = listaFactoresRiesgo.iterator();
//        while(iterF.hasNext()){
//            FactorDeRiesgo factor = iterF.next();
//            factoresRiesgo = factoresRiesgo + factor.getNombreFactor() + "#";
//        }
        Iterator<String> iterArea = areaDefinida.iterator();
        while(iterArea.hasNext()){
            String factor = iterArea.next();
            datosArea = datosArea + factor + "@";            
        }
        
        salida = salida + this.getIdAreaRiesgo()+";"+this.getNombre()+ ";"+this.getNivelCapacitacion()+";"+
                 listaFactoresRiesgo+";"+esPorGeoloc+";"+datosArea;
        return salida;
    }

    
    
}
